import OpenAI from 'openai'
import { ref } from 'vue'

// 创建一个响应式的 OpenAI 实例引用
export const openaiClient = ref<OpenAI | null>(null)

// 初始化 OpenAI 客户端
export function initOpenAIClient(apiKey: string) {
  try {
    openaiClient.value = new OpenAI({
      apiKey: apiKey,
      // 这里可以添加其他配置，比如超时时间等
      timeout: 30 * 1000, // 30 seconds
    })
    return true
  } catch (error) {
    console.error('初始化 OpenAI 客户端失败:', error)
    return false
  }
}

// 检查 API Key 是否有效
export async function validateAPIKey(apiKey: string): Promise<boolean> {
  try {
    const client = new OpenAI({ apiKey })
    // 发送一个简单的测试请求
    await client.chat.completions.create({
      model: 'gpt-3.5-turbo',
      messages: [{ role: 'user', content: 'test' }],
      max_tokens: 5
    })
    return true
  } catch (error) {
    console.error('API Key 验证失败:', error)
    return false
  }
} 